//
//  main.m
//  ios_base
//
//  Created by mir_yan on 2017/3/16.
//  Copyright © 2017年 hakeem. All rights reserved.
//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    // 基本数据类型
    // char 1 short 2  int 4  long 4/8  float 4  double  8
    int age = 18;
    char sex = 'm';
    sex = 'f';
    
    /*
        不能以数字开头
        字母 数字 下划线 $
        驼峰命名
        先定义后使用
     */
    
    printf("hello hekeem  汉文化 \n");
    
    /*
        占位符
        %c  char
        %d  int
        %hd short
        %ld long
        %f  float
        %lf double
     */
    
    printf("我的年龄%d\n",age);
    
    float score = 97.8;
    // %.1f 保留小数点一位数字
    printf("hakeem 的成绩%.1f分\n",score);
    
    /*
        算数运算符
     */
    int a = 2;
    int b = 3;
    int c = a + b;
    printf("c=%d\n",c);
    
    int a1 = 200;
    int a2 = 300 + a1++; // 300 + a1 赋值a2 , ++a1 先进行加 201
    printf("%d\n",a2); // 500
    
    
    /*
        复合运算符
        +=  a+=b  => a = a+b;
        -=  a-=b  => a = a-b;
        *=  a*=b  => a = a*b;
        /=  a/=b  => a = a/b;
        %=  a%=b  => a = a%b;
     */
    
    
    
    /*
        关系和逻辑
        && 同时为真  真
        || 同时为假  假
        ！ 真变假  假变真
     */
    
    int aa1 = 100;
    int aa2 = 200;
    BOOL r = aa1 > aa2;
    printf("%d\n",r); // 0 假
    
    
    // 短路现象  后面不执行
    int b1 = 20;
    int b2 = 5;
    int b3 = 10;
    BOOL r1 = b1>b2&&b3++;
    
    printf("%d\n",b3); // 11
    
    
    /*
        分支结构
     */
    
    
    /*
        随机函数
        // 5-10 之间随机生成数字
        // a-b  (b-a+1)+a
     */
    int number = arc4random()%6+5;
    printf("随机数%d\n",number);
    
    int heroNumber = arc4random()%5+1;
//    switch (heroNumber) {
//        case 1:
//        {
//            printf("斧王1\n");
//        }
//            break;
//        case 2:
//        {
//            printf("斧王2\n");
//        }
//            break;
//        case 3:
//        {
//            printf("斧王3\n");
//        }
//            break;
//        case 4:
//        {
//            printf("斧王4\n");
//        }
//            break;
//        case 5:
//        {
//            printf("斧王5\n");
//        }
//            break;
//        default:
//            break;
//    }
    
    // 多个case 打印同一内容
    switch (heroNumber) {
        case 1:
        case 2:
        case 3:
        case 4:
        {
            printf("斧王4\n");
        }
            break;
        case 5:
        {
            printf("斧王5\n");
        }
            break;
        default:
            break;
    }
    
    
    
    return 0;
}
